summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKelebek1 <eeeedddccc@hotmail.co.uk>2023-03-28 11:29:20 +0200
committerKelebek1 <eeeedddccc@hotmail.co.uk>2023-03-28 12:07:39 +0200
commitc68b4bee2cbcfa334d4855ef2b2edd68aca0e633 (patch)
tree44d27dc7524ece03822de82794f7617065e1570d
parentMerge pull request #9989 from Morph1984/boost-1.79-exact (diff)
downloadyuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.tar
yuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.tar.gz
yuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.tar.bz2
yuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.tar.lz
yuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.tar.xz
yuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.tar.zst
yuzu-c68b4bee2cbcfa334d4855ef2b2edd68aca0e633.zip
-rw-r--r--src/video_core/texture_cache/texture_cache.h30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h
index 858449af8..39f42ab90 100644
--- a/src/video_core/texture_cache/texture_cache.h
+++ b/src/video_core/texture_cache/texture_cache.h
@@ -1176,13 +1176,13 @@ ImageId TextureCache<P>::JoinImages(const ImageInfo& info, GPUVAddr gpu_addr, VA
const size_t size_bytes = CalculateGuestSizeInBytes(new_info);
const bool broken_views = runtime.HasBrokenTextureViewFormats();
const bool native_bgr = runtime.HasNativeBgr();
- std::vector<ImageId> overlap_ids;
+ boost::container::small_vector<ImageId, 4> overlap_ids;
std::unordered_set<ImageId> overlaps_found;
- std::vector<ImageId> left_aliased_ids;
- std::vector<ImageId> right_aliased_ids;
+ boost::container::small_vector<ImageId, 4> left_aliased_ids;
+ boost::container::small_vector<ImageId, 4> right_aliased_ids;
std::unordered_set<ImageId> ignore_textures;
- std::vector<ImageId> bad_overlap_ids;
- std::vector<ImageId> all_siblings;
+ boost::container::small_vector<ImageId, 4> bad_overlap_ids;
+ boost::container::small_vector<ImageId, 4> all_siblings;
const bool this_is_linear = info.type == ImageType::Linear;
const auto region_check = [&](ImageId overlap_id, ImageBase& overlap) {
if (True(overlap.flags & ImageFlagBits::Remapped)) {
@@ -1298,16 +1298,16 @@ ImageId TextureCache<P>::JoinImages(const ImageInfo& info, GPUVAddr gpu_addr, VA
Image& overlap = slot_images[overlap_id];
if (True(overlap.flags & ImageFlagBits::GpuModified)) {
new_image.flags |= ImageFlagBits::GpuModified;
- }
- const auto& resolution = Settings::values.resolution_info;
- const SubresourceBase base = new_image.TryFindBase(overlap.gpu_addr).value();
- const u32 up_scale = can_rescale ? resolution.up_scale : 1;
- const u32 down_shift = can_rescale ? resolution.down_shift : 0;
- auto copies = MakeShrinkImageCopies(new_info, overlap.info, base, up_scale, down_shift);
- if (overlap.info.num_samples != new_image.info.num_samples) {
- runtime.CopyImageMSAA(new_image, overlap, std::move(copies));
- } else {
- runtime.CopyImage(new_image, overlap, std::move(copies));
+ const auto& resolution = Settings::values.resolution_info;
+ const SubresourceBase base = new_image.TryFindBase(overlap.gpu_addr).value();
+ const u32 up_scale = can_rescale ? resolution.up_scale : 1;
+ const u32 down_shift = can_rescale ? resolution.down_shift : 0;
+ auto copies = MakeShrinkImageCopies(new_info, overlap.info, base, up_scale, down_shift);
+ if (overlap.info.num_samples != new_image.info.num_samples) {
+ runtime.CopyImageMSAA(new_image, overlap, std::move(copies));
+ } else {
+ runtime.CopyImage(new_image, overlap, std::move(copies));
+ }
}
if (True(overlap.flags & ImageFlagBits::Tracked)) {
UntrackImage(overlap, overlap_id);